/* Copyright 203-2115 AtomWare Technology Pty Limited
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 * 
 * The flowing information must be keep 
 * AmountOver30Condition.java
 * lawcontract
 * 2013-7-29下午5:40:43
 * @author 屈甲康
 * QQ285799123
 * mailto:qujiakang@gmail.com
 */

package org.jackysoft.opensymphony.workflow.util;

import java.util.Map;

import javax.annotation.Resource;

import org.jackysoft.entity.HibernateWorkflowEntry;
import org.jackysoft.opensymphony.workflow.Condition;
import org.jackysoft.opensymphony.workflow.WorkflowException;
import org.jackysoft.service.OfficeDataRegionService;
import org.jackysoft.service.VariableService;
import org.springframework.stereotype.Component;

@Component("over30cnd")
public class AmountOver30Condition implements Condition {
	
	private @Resource OfficeDataRegionService dataService;
	@Override
	public boolean passesCondition(Map<String, Object> transientVars,
			Map<String, String> args, VariableService vservice)
			throws WorkflowException {
		HibernateWorkflowEntry entry  =  (HibernateWorkflowEntry) transientVars.get("entry");
        String astr =  dataService.getValue(entry.getId(), "PO_amount");
        Integer amount =0;
        try{   
        	Integer.parseInt(astr);
        }catch(NumberFormatException e){
        	amount=0;
        }
        
        return amount>30;
	}

}
